1 from tkinter import *
2 import random
3 import time
4 import datetime
5 from tkinter import messagebox, ttk
6
7 root=Tk()
8 root.geometry("1550x850+0+0")
9 root.title("Restaurant Management System")
10 root.configure(background='black')
11 # ========================================================================================================
12 # FRAMES
13 #========================================================================================================
14 Tops = Frame(root, width=1550, height=80, bd=12, relief="raise")
15 Tops.pack(side = TOP)
16 lblTitle = Label(Tops, font=("arial", 50, 'bold'), text=" Restaurant Management System ")
17 lblTitle.grid(row=0, column=0)
18
19
20 #==================================DATE TIME======================================================
21 localtime=time.asctime(time.localtime(time.time()))
22 lblInfo=Label(Tops,font=('arial',20,'bold'),text=localtime,bd=10,anchor='w')
23 lblInfo.grid(row=1,column=0)
24 #===================================================================================================
25
26
27 BottomMainFrame = Frame(root, width=1550, height=770, bd=12, relief="raise")
28 BottomMainFrame.pack(side=BOTTOM)
29
30 f1 = Frame(BottomMainFrame, width=500, height=770, bd=12, relief=SUNKEN)
31 f1.pack(side=LEFT)
32
33 f1top = Frame(f1, width=500, height=570, bd=12, relief="raise")
34 f1top.pack(side=TOP)
35 f1bottom = Frame(f1, width=500, height=200, bd=12, relief="raise")
36 f1bottom.pack(side=BOTTOM)
37
38
39 f2 = Frame(BottomMainFrame, width=400, height=770, bd=12, relief=SUNKEN)
40 f2.pack(side=LEFT)
41 f2Top = Frame(f2, width=400, height=350, bd=4, relief="raise")
42 f2Top.pack(side=TOP)
43 f2Bottom = Frame(f2, width=400, height=450,bd=4, relief="raise")
44 f2Bottom.pack(side=BOTTOM)
45
46 f3 = Frame(BottomMainFrame, width=400, height=770, bd=12, relief=SUNKEN)
47 f3.pack(side=RIGHT)
48
49 f3top = Frame(f3, width=400, height=770, bd=12, relief="raise")
50 f3top.pack(side=TOP)
51 f3bottom = Frame(f3, width=400, height=100, bd=12, relief="raise")
52 f3bottom.pack(side=BOTTOM)
53
54 # ========================================================================================================
55 # VARIABLES
56 #========================================================================================================
57 Receipt_Ref = StringVar()
58 DateofOrder = StringVar()
59 DateofOrder.set(time.strftime("%d/%m/%y"))
60
61
62 var1 = IntVar()
63 var2 = IntVar()
64 var3 = IntVar()
65 var4 = IntVar()
66 var5 = IntVar()
67 var6 = IntVar()
68 var7 = IntVar()
69 var8 = IntVar()
70 var9 = IntVar()
71 var10 = IntVar()
72 var11 = IntVar()
73 var12 = IntVar()
74 var13 = IntVar()
75 var14 = IntVar()
76 var15 = IntVar()
77 var16 = IntVar()
78 var17 = IntVar()
79 var18 = IntVar()
80 var19 = IntVar()
81 var20 = IntVar()
82 var21 = IntVar()
83 var100 = IntVar()
84
85 var1.set(0)
86 var2.set(0)
87 var3.set(0)
88 var4.set(0)
89 var5.set(0)
90 var6.set(0)
91 var7.set(0)
92 var8.set(0)
93 var9.set(0)
94 var10.set(0)
95 var11.set(0)
96 var12.set(0)
97 var13.set(0)
98 var14.set(0)
99 var15.set(0)
100 var16.set(0)
101 var17.set(0)
102 var18.set(0)
103 var19.set(0)
104 var20.set(0)
105 var21.set(0)
106 var100.set(0)
107
108 #====================================BOTTOM FRAME : FRAME 1 VARIABLES==================================================
109 varFries = StringVar()
110 varSalad = StringVar()
111 varHamburger = StringVar()
112 varLittiChokha = StringVar()
113 varChickenSalad = StringVar()
114 varCheeseSandwich = StringVar()
115 varChickenSandwich = StringVar()
116 varFishSandwich = StringVar()
117
118 varFries.set(0)
119 varSalad.set(0)
120 varHamburger.set(0)
121 varLittiChokha.set(0)
122 varChickenSalad.set(0)
123 varCheeseSandwich.set(0)
124 varChickenSandwich.set(0)
125 varFishSandwich.set(0)
126
127 #====================================BOTTOM FRAME : FRAME 2 TOP FRAME VARIABLES==================================================
128 varChocoBrownie = StringVar()
129 varGulabJamun = StringVar()
130 varPaan = StringVar()
131 varRasmalai = StringVar()
132 varJalebi = StringVar()
133
134 varChocoBrownie.set(0)
135 varGulabJamun.set(0)
136 varPaan.set(0)
137 varRasmalai.set(0)
138 varJalebi.set(0)
139
140 #====================================BOTTOM FRAME : FRAME 2 BOTTOM FRAME VARIABLES==================================================
141 varTotal = StringVar()
142 varCGST = StringVar()
143 varSGST = StringVar()
144 varServiceCharge = StringVar()
145 varPay = StringVar()
146 varPM = StringVar()
147 varTotal.set(0)
148 varCGST.set(0)
149 varSGST.set(0)
150 varServiceCharge.set(0)
151 varPay.set(0)
152
153 #====================================BOTTOM FRAME : FRAME 3 VARIABLES==================================================
154 varTea = StringVar()
155 varCola = StringVar()
156 varCoffee = StringVar()
157 varOrange = StringVar()
158 varWater= StringVar()
159 varChocolateShake = StringVar()
160 varFruitCocktail = StringVar()
161 varVanillaShake = StringVar()
162 varOreoKrusher = StringVar()
163
164 varTea.set(0)
165 varCoffee.set(0)
166 varCola.set(0)
167 varOrange.set(0)
168 varWater.set(0)
169 varChocolateShake.set(0)
170 varFruitCocktail.set(0)
171 varVanillaShake.set(0)
172 varOreoKrusher.set(0)
173
174
175 #================================================================================
176 # BUTTON FUNCTIONS
177 # ================================================================================
178
179 #========================EXIT FUNCTION======================================
180 def iExit():
181 qExit = messagebox.askyesno("Restraunt Management","Do you want to quit ?")
182 if qExit > 0:
183 root.destroy()
184 return
185
186 #========================RESET FUNCTION======================================
187
188 def Reset():
189 varFries.set(0)
190 varSalad.set(0)
191 varHamburger.set(0)
192 varLittiChokha.set(0)
193 varChickenSalad.set(0)
194 varCheeseSandwich.set(0)
195 varChickenSandwich.set(0)
196 varFishSandwich.set(0)
197 varChocoBrownie.set(0)
198 varGulabJamun.set(0)
199 varPaan.set(0)
200 varRasmalai.set(0)
201 varJalebi.set(0)
202 varTotal.set(0)
203 varCGST.set(0)
204 varSGST.set(0)
205 varServiceCharge.set(0)
206 varPay.set(0)
207 varTea.set(0)
208 varCoffee.set(0)
209 varCola.set(0)
210 varOrange.set(0)
211 varWater.set(0)
212 varChocolateShake.set(0)
213 varFruitCocktail.set(0)
214 varVanillaShake.set(0)
215 varOreoKrusher.set(0)
216
217 var1.set(0)
218 var2.set(0)
219 var3.set(0)
220 var4.set(0)
221 var5.set(0)
222 var6.set(0)
223 var7.set(0)
224 var8.set(0)
225 var9.set(0)
226 var10.set(0)
227 var11.set(0)
228 var12.set(0)
229 var13.set(0)
230 var14.set(0)
231 var15.set(0)
232 var16.set(0)
233 var17.set(0)
234 var18.set(0)
235 var19.set(0)
236 var20.set(0)
237 var21.set(0)
238
239 txtFries.configure(state=DISABLED)
240 txtSalad.configure(state=DISABLED)
241 txtHamburger.configure(state=DISABLED)
242 txtLittiChokha.configure(state=DISABLED)
243 txtChickenSalad.configure(state=DISABLED)
244 txtCheeseSandwich.configure(state=DISABLED)
245 txtChickenSandwich.configure(state=DISABLED)
246 txtFishSandwich.configure(state=DISABLED)
247 txtChocoBrownie.configure(state=DISABLED)
248 txtGulabJamun.configure(state=DISABLED)
249 txtPaan.configure(state=DISABLED)
250 txtRasmalai.configure(state=DISABLED)
251 txtJalebi.configure(state=DISABLED)
252 txtTotal.configure(state=DISABLED)
253 txtCGST.configure(state=DISABLED)
254 txtSGST.configure(state=DISABLED)
255 txtServiceCharge.configure(state=DISABLED)
256 txtpay.configure(state=DISABLED)
257 txtTea.configure(state=DISABLED)
258 txtCoffee.configure(state=DISABLED)
259 txtCola.configure(state=DISABLED)
260 txtOrange.configure(state=DISABLED)
261 txtWater.configure(state=DISABLED)
262 txtChocolateShake.configure(state=DISABLED)
263 txtOreoKrusher.configure(state=DISABLED)
264 txtVanillaShake.configure(state=DISABLED)
265 txtOreoKrusher.configure(state=DISABLED)
266
267
268
269
270 # ===============================================================
271 # RECEIPT FUMCTION
272 # ================================================================
273
274 def Receipt():
275 roor = Tk()
276 roor.geometry("600x700+0+0")
277
278 f1 = Frame(roor, width = 1600, height = 700, bd = 12, relief = "raise")
279 f1.pack()
280 lblReceipt = Label(f1, font=('arial', 12, 'bold'), text="Receipt", bd=2, anchor='w')
281 lblReceipt.grid(row=0, column=0, sticky=W)
282 txtReceipt = Text(f1, width=64, height=35, bg="white", bd=8, font=('arial', 11, 'bold'))
283 txtReceipt.grid(row=1, column=0)
284 txtReceipt.delete("1.0", END)
285 x = random.randint(1000, 500890)
286 randomRef = str(x)
287 Receipt_Ref.set("BILL" + randomRef)
288
289 txtReceipt.insert(END, 'Receipt Ref:\t\t\t'+ Receipt_Ref.get() + '\t\t\t' + DateofOrder.get()+"\n")
290 txtReceipt.insert(END, 'Items\t\t\t\t' + "No. of Items \n\n")
291 txtReceipt.insert(END, 'Fries:\t\t\t\t\t' + varFries.get() + "\n")
292 txtReceipt.insert(END, 'Salad: \t\t\t\t\t' + varSalad.get() + "\n")
293 txtReceipt.insert(END, 'HamBurger: \t\t\t\t\t' + varHamburger.get() + "\n")
294 txtReceipt.insert(END, 'Litti-Chokha: \t\t\t\t\t' + varLittiChokha.get() + "\n")
295 txtReceipt.insert(END, 'Chicken Salad: \t\t\t\t\t' + varChickenSalad.get() + "\n")
296 txtReceipt.insert(END, 'Cheese Sandwhich: \t\t\t\t\t' + varCheeseSandwich.get() + "\n")
297 txtReceipt.insert(END, 'Chicken Sandwhich: \t\t\t\t\t' + varChickenSandwich.get() + "\n")
298 txtReceipt.insert(END, 'Fish Sandwhich: \t\t\t\t\t' + varFishSandwich.get() + "\n")
299 txtReceipt.insert(END, 'Choco Brownie: \t\t\t\t\t' + varChocoBrownie.get() + "\n")
300 txtReceipt.insert(END, 'Gulab Jamun: \t\t\t\t\t' + varGulabJamun.get() + "\n")
301 txtReceipt.insert(END, 'Paan: \t\t\t\t\t' + varPaan.get() + "\n")
302 txtReceipt.insert(END, 'RasMalai: \t\t\t\t\t' + varRasmalai.get() + "\n")
303 txtReceipt.insert(END, 'Jalebi: \t\t\t\t\t' + varJalebi.get() + "\n")
304 txtReceipt.insert(END, 'Tea: \t\t\t\t\t' + varTea.get() + "\n")
305 txtReceipt.insert(END, 'Coffee: \t\t\t\t\t' + varCoffee.get() + "\n")
306 txtReceipt.insert(END, 'Cola: \t\t\t\t\t' + varCola.get() + "\n")
307 txtReceipt.insert(END, 'Orange Juice: \t\t\t\t\t' + varOrange.get() + "\n")
308 txtReceipt.insert(END, 'Water: \t\t\t\t\t' + varWater.get() + "\n")
309 txtReceipt.insert(END, 'Chocolate Shake: \t\t\t\t\t' + varChocolateShake.get() + "\n")
310 txtReceipt.insert(END, 'Fruit Cocktail: \t\t\t\t\t' + varFruitCocktail.get() + "\n")
311 txtReceipt.insert(END, 'Vanilla Shake: \t\t\t\t\t' + varVanillaShake.get() + "\n")
312 txtReceipt.insert(END, 'Oreo Krusher: \t\t\t\t\t' + varOreoKrusher.get() + "\n")
313 txtReceipt.insert(END, '\nTotal Cost of Food: \t\t' + varTotal.get() + "\nCGST:\t\t" + varCGST.get() + "\nSGST:\t\t" +
314 varSGST.get() + "\nService Charge:\t\t" + varServiceCharge.get() + "\nTotal Payble amount:\t\t" + varPay.get())
315 roor.mainloop()
316
317
318 #================================================PRICE LIST=======================================
319 def price_list():
320 roo = Tk()
321 roo.geometry("600x700+0+0")
322 roo.title("Price List")
323
324 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="ITEM", fg="black", bd=5)
325 lblinfo.grid(row=0, column=0)
326 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="_____________", fg="white", anchor=W)
327 lblinfo.grid(row=0, column=2)
328 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="PRICE", fg="black", anchor=W)
329 lblinfo.grid(row=0, column=3)
330 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="Fries", fg="steel blue", anchor=W)
331 lblinfo.grid(row=1, column=0)
332 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="59", fg="steel blue", anchor=W)
333 lblinfo.grid(row=1, column=3)
334 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="Salad", fg="steel blue", anchor=W)
335 lblinfo.grid(row=2, column=0)
336 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="49", fg="steel blue", anchor=W)
337 lblinfo.grid(row=2, column=3)
338 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="Hamburger", fg="steel blue", anchor=W)
339 lblinfo.grid(row=3, column=0)
340 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="99", fg="steel blue", anchor=W)
341 lblinfo.grid(row=3, column=3)
342 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="Litti-Chokha", fg="steel blue", anchor=W)
343 lblinfo.grid(row=4, column=0)
344 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="39", fg="steel blue", anchor=W)
345 lblinfo.grid(row=4, column=3)
346 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="Chicken Salad", fg="steel blue", anchor=W)
347 lblinfo.grid(row=5, column=0)
348 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="99", fg="steel blue", anchor=W)
349 lblinfo.grid(row=5, column=3)
350 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="Cheese Sandwhich", fg="steel blue", anchor=W)
351 lblinfo.grid(row=6, column=0)
352 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="79", fg="steel blue", anchor=W)
353 lblinfo.grid(row=6, column=3)
354 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="Chicken Sandwhich", fg="steel blue", anchor=W)
355 lblinfo.grid(row=7, column=0)
356 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="99", fg="steel blue", anchor=W)
357 lblinfo.grid(row=7, column=3)
358
359 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="Fish Sandwhich", fg="steel blue", anchor=W)
360 lblinfo.grid(row=8, column=0)
361 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="119", fg="steel blue", anchor=W)
362 lblinfo.grid(row=8, column=3)
363 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="Chocolate Brownie", fg="steel blue", anchor=W)
364 lblinfo.grid(row=9, column=0)
365 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="139", fg="steel blue", anchor=W)
366 lblinfo.grid(row=9, column=3)
367
368 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="Hot Gulab Jamun with Icecream", fg="steel blue", anchor=W)
369 lblinfo.grid(row=10, column=0)
370 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="59", fg="steel blue", anchor=W)
371 lblinfo.grid(row=10, column=3)
372 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="Paan", fg="steel blue", anchor=W)
373 lblinfo.grid(row=11, column=0)
374 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="39", fg="steel blue", anchor=W)
375 lblinfo.grid(row=11, column=3)
376
377 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="Rasmalai", fg="steel blue", anchor=W)
378 lblinfo.grid(row=12, column=0)
379 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="59", fg="steel blue", anchor=W)
380 lblinfo.grid(row=12, column=3)
381 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="Jalebi", fg="steel blue", anchor=W)
382 lblinfo.grid(row=13, column=0)
383 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="39", fg="steel blue", anchor=W)
384 lblinfo.grid(row=13, column=3)
385
386 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="Tea", fg="steel blue", anchor=W)
387 lblinfo.grid(row=14, column=0)
388 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="49", fg="steel blue", anchor=W)
389 lblinfo.grid(row=14, column=3)
390 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="Coffee", fg="steel blue", anchor=W)
391 lblinfo.grid(row=15, column=0)
392 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="79", fg="steel blue", anchor=W)
393 lblinfo.grid(row=15, column=3)
394
395 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="Cola", fg="steel blue", anchor=W)
396 lblinfo.grid(row=16, column=0)
397 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="20", fg="steel blue", anchor=W)
398 lblinfo.grid(row=16, column=3)
399 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="Orange Juice", fg="steel blue", anchor=W)
400 lblinfo.grid(row=17, column=0)
401 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="50", fg="steel blue", anchor=W)
402 lblinfo.grid(row=17, column=3)
403 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="Mineral Water", fg="steel blue", anchor=W)
404 lblinfo.grid(row=18, column=0)
405 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="25", fg="steel blue", anchor=W)
406 lblinfo.grid(row=18, column=3)
407 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="Chocolate Shake", fg="steel blue", anchor=W)
408 lblinfo.grid(row=19, column=0)
409 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="50", fg="steel blue", anchor=W)
410 lblinfo.grid(row=19, column=3)
411
412 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="Oreo Krusher", fg="steel blue", anchor=W)
413 lblinfo.grid(row=20, column=0)
414 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="105", fg="steel blue", anchor=W)
415 lblinfo.grid(row=20, column=3)
416 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="Vanilla Shake", fg="steel blue", anchor=W)
417 lblinfo.grid(row=21, column=0)
418 lblinfo = Label(roo, font=('aria', 15, 'bold'), text="50", fg="steel blue", anchor=W)
419 lblinfo.grid(row=21, column=3)
420 roo.mainloop()
421
422 # ===============================TOTAL FUNCTION===============================================
423 def TotalCost():
424 m1 = float(varFries.get())
425 m2 = float(varSalad.get())
426 m3 = float(varHamburger.get())
427 m4 = float(varLittiChokha.get())
428 m5 = float(varChickenSalad.get())
429 m6 = float(varCheeseSandwich.get())
430 m7 = float(varChickenSandwich.get())
431 m8 = float(varFishSandwich.get())
432 m9 = float(varChocoBrownie.get())
433 m10 = float(varGulabJamun.get())
434 m11 = float(varPaan.get())
435 m12 = float(varRasmalai.get())
436 m13 = float(varJalebi.get())
437 m14 = float(varTea.get())
438 m15 = float(varCola.get())
439 m16 = float(varCoffee.get())
440 m17 = float(varOrange.get())
441 m18 = float(varWater.get())
442 m19 = float(varChocolateShake.get())
443 m20 = float(varVanillaShake.get())
444 m21 = float(varOreoKrusher.get())
445
446 iTotal = (m1*59 + m2*49 + m3*99 + m4*39 + m5*99 + m6*79 + m7*99 + m8*119 + m9*139 + m10*59 + m11*39 + m12*59 + m13*39 + m14*49 + m15*20 + m16*79 +
447 m17*50 + m18*25 + m19*50 + m20*50 + m21*105)
448
449 striTotal = 'Rs',str(iTotal)
450 varTotal.set(striTotal)
451
452 cgst = (9/100)*iTotal
453 strcgst = 'Rs',str(cgst)
454 varCGST.set(strcgst)
455
456 sgst = (9/100)*iTotal
457 strsgst = 'Rs',str(sgst)
458 varSGST.set(strsgst)
459
460 service_charge = 0.1*iTotal
461 strService_charge = "Rs",str(service_charge)
462 varServiceCharge.set(strService_charge)
463
464 strPay = 'Rs', str('%.2f'%(iTotal+cgst+sgst+service_charge))
465 varPay.set(strPay)
466
467 #================================================================================
468 # CHECKBOX FUNCTION
469 # ================================================================================
470 def a():
471 if var1.get() == 1:
472 txtFries.configure(state=NORMAL)
473 varFries.set("")
474 elif var1.get() == 0:
475 txtFries.configure(state=DISABLED)
476 varFries.set("0")
477
478 def b():
479 if var2.get() == 1:
480 txtSalad.configure(state=NORMAL)
481 varSalad.set("")
482 elif var2.get() == 0:
483 txtSalad.configure(state=DISABLED)
484 varSalad.set("0")
485
486 def c():
487 if var3.get() == 1:
488 txtHamburger.configure(state=NORMAL)
489 varHamburger.set("")
490 elif var3.get() == 0:
491 txtHamburger.configure(state=DISABLED)
492 varHamburger.set("0")
493
494 def d():
495 if var4.get() == 1:
496 txtLittiChokha.configure(state=NORMAL)
497 varLittiChokha.set("")
498 elif var4.get() == 0:
499 txtLittiChokha.configure(state=DISABLED)
500 varLittiChokha.set("0")
501
502 def e():
503 if var5.get() == 1:
504 txtChickenSalad.configure(state=NORMAL)
505 varChickenSalad.set("")
506 elif var5.get() == 0:
507 txtChickenSalad.configure(state=DISABLED)
508 varChickenSalad.set("0")
509
510
511 def f():
512 if var6.get() == 1:
513 txtCheeseSandwich.configure(state=NORMAL)
514 varCheeseSandwich.set("")
515 elif var6.get() == 0:
516 txtCheeseSandwich.configure(state=DISABLED)
517 varCheeseSandwich.set("0")
518
519 def g():
520 if var7.get() == 1:
521 txtChickenSandwich.configure(state=NORMAL)
522 varChickenSandwich.set("")
523 elif var7.get() == 0:
524 txtChickenSandwich.configure(state=DISABLED)
525 varChickenSandwich.set("0")
526
527 def h():
528 if var8.get() == 1:
529 txtFishSandwich.configure(state=NORMAL)
530 varFishSandwich.set("")
531 elif var8.get() == 0:
532 txtFishSandwich.configure(state=DISABLED)
533 varFishSandwich.set("0")
534
535 def i():
536 if var9.get() == 1:
537 txtChocoBrownie.configure(state=NORMAL)
538 varChocoBrownie.set("")
539 elif var9.get() == 0:
540 txtChocoBrownie.configure(state=DISABLED)
541 varChocoBrownie.set("0")
542
543 def j():
544 if var10.get() == 1:
545 txtGulabJamun.configure(state=NORMAL)
546 varGulabJamun.set("")
547 elif var10.get() == 0:
548 txtGulabJamun.configure(state=DISABLED)
549 varGulabJamun.set("0")
550
551 def k():
552 if var11.get() == 1:
553 txtPaan.configure(state=NORMAL)
554 varPaan.set("")
555 elif var11.get() == 0:
556 txtPaan.configure(state=DISABLED)
557 varPaan.set("0")
558
559 def l():
560 if var12.get() == 1:
561 txtRasmalai.configure(state=NORMAL)
562 varRasmalai.set("")
563 elif var12.get() == 0:
564 txtRasmalai.configure(state=DISABLED)
565 varRasmalai.set("0")
566
567 def m():
568 if var13.get() == 1:
569 txtJalebi.configure(state=NORMAL)
570 varJalebi.set("")
571 elif var13.get() == 0:
572 txtJalebi.configure(state=DISABLED)
573 varJalebi.set("0")
574
575 def n():
576 if var14.get() == 1:
577 txtTea.configure(state=NORMAL)
578 varTea.set("")
579 elif var14.get() == 0:
580 txtTea.configure(state=DISABLED)
581 varTea.set("0")
582
583 def o():
584 if var15.get() == 1:
585 txtCola.configure(state=NORMAL)
586 varCola.set("")
587 elif var15.get() == 0:
588 txtCola.configure(state=DISABLED)
589 varCola.set("0")
590
591 def p():
592 if var16.get() == 1:
593 txtCoffee.configure(state=NORMAL)
594 varCoffee.set("")
595 elif var16.get() == 0:
596 txtCoffee.configure(state=DISABLED)
597 varCoffee.set("0")
598
599 def q():
600 if var17.get() == 1:
601 txtOrange.configure(state=NORMAL)
602 varOrange.set("")
603 elif var17.get() == 0:
604 txtOrange.configure(state=DISABLED)
605 varOrange.set("0")
606
607 def r():
608 if var18.get() == 1:
609 txtWater.configure(state=NORMAL)
610 varWater.set("")
611 elif var18.get() == 0:
612 txtWater.configure(state=DISABLED)
613 varWater.set("0")
614
615 def s():
616 if var19.get() == 1:
617 txtChocolateShake.configure(state=NORMAL)
618 varChocolateShake.set("")
619 elif var19.get() == 0:
620 txtChocolateShake.configure(state=DISABLED)
621 varChocolateShake.set("0")
622
623 def t():
624 if var20.get() == 1:
625 txtVanillaShake.configure(state=NORMAL)
626 varVanillaShake.set("")
627 elif var20.get() == 0:
628 txtVanillaShake.configure(state=DISABLED)
629 varVanillaShake.set("0")
630
631 def u():
632 if var21.get() == 1:
633 txtOreoKrusher.configure(state=NORMAL)
634 varOreoKrusher.set("")
635 elif var21.get() == 0:
636 txtOreoKrusher.configure(state=DISABLED)
637 varOreoKrusher.set("0")
638
639
640
641
642
643
644 #================================================================================
645 # FRAME 1
646 # ================================================================================
647
648
649
650 lblMeal = Label(f1top,font=("arial",25,'bold'), text="Fast Meal")
651 lblMeal.grid(row=0, column=0)
652
653 Fries = Checkbutton(f1top, text="Fries", variable=var1, onvalue=1, offvalue=0, font=("arial", 18, 'bold'), command=a)
654 Fries.grid(row=1, column=0, sticky = W)
655 txtFries = Entry(f1top, font=("arial", 18, 'bold'), bd=8, textvariable = varFries, width=4, justify="right",state=DISABLED)
656 txtFries.grid(row=1, column=1)
657
658 Salad = Checkbutton(f1top, text="Salad", variable=var2, onvalue=1, offvalue=0, font=("arial", 18, 'bold'), command=b)
659 Salad.grid(row=2, column=0, sticky = W)
660 txtSalad = Entry(f1top, font=("arial", 18, 'bold'), bd=8, textvariable = varSalad, width=4, justify="right",state=DISABLED)
661 txtSalad.grid(row=2, column=1)
662
663 Hamburger = Checkbutton(f1top, text="Hamburger", variable=var3, onvalue=1, offvalue=0, font=("arial", 18, 'bold'), command=c)
664 Hamburger.grid(row=3, column=0, sticky = W)
665 txtHamburger = Entry(f1top, font=("arial", 18, 'bold'), bd=8, textvariable = varHamburger, width=4, justify="right",state=DISABLED)
666 txtHamburger.grid(row=3, column=1)
667
668 LittiChokha = Checkbutton(f1top, text="Litti Chokha", variable=var4, onvalue=1, offvalue=0, font=("arial", 18, 'bold'), command=d)
669 LittiChokha.grid(row=4, column=0, sticky = W)
670 txtLittiChokha = Entry(f1top, font=("arial", 18, 'bold'), bd=8, textvariable = varLittiChokha, width=4, justify="right",state=DISABLED)
671 txtLittiChokha.grid(row=4, column=1)
672
673 ChickenSalad = Checkbutton(f1top, text="Chicken Salad", variable=var5, onvalue=1, offvalue=0, font=("arial", 18, 'bold'), command=e)
674 ChickenSalad.grid(row=5, column=0, sticky = W)
675 txtChickenSalad = Entry(f1top, font=("arial", 18, 'bold'), bd=8, textvariable = varChickenSalad, width=4, justify="right",state=DISABLED)
676 txtChickenSalad.grid(row=5, column=1)
677
678 lblSpace = Label(f1top,text="\n")
679 lblSpace.grid(row=6, column=0)
680 lblSandwich = Label(f1top,font=("arial",25,'bold'), text="Sandwiches")
681 lblSandwich.grid(row=7, column=0)
682
683 CheeseSandwich = Checkbutton(f1top, text="Cheese Sandwich", variable=var6, onvalue=1, offvalue=0, font=("arial", 18, 'bold'), command=f)
684 CheeseSandwich.grid(row=8, column=0, sticky = W)
685 txtCheeseSandwich = Entry(f1top, font=("arial", 18, 'bold'), bd=8, textvariable = varCheeseSandwich, width=4, justify="right",state=DISABLED)
686 txtCheeseSandwich.grid(row=8, column=1)
687
688 ChickenSandwich = Checkbutton(f1top, text="Chicken Sandwich", variable=var7, onvalue=1, offvalue=0, font=("arial", 18, 'bold'), command=g)
689 ChickenSandwich.grid(row=9, column=0, sticky = W)
690 txtChickenSandwich = Entry(f1top, font=("arial", 18, 'bold'), bd=8, textvariable = varChickenSandwich, width=4, justify="right",state=DISABLED)
691 txtChickenSandwich.grid(row=9, column=1)
692
693 FishSandwich = Checkbutton(f1top, text="Fish Sandwhich", variable=var8, onvalue=1, offvalue=0, font=("arial", 18, 'bold'), command=h)
694 FishSandwich.grid(row=10, column=0, sticky = W)
695 txtFishSandwich = Entry(f1top, font=("arial", 18, 'bold'), bd=8, textvariable = varFishSandwich, width=4, justify="right",state=DISABLED)
696 txtFishSandwich.grid(row=10, column=1)
697
698 #lblSpace = Label(f1top,text="\n\n\n\n\n\n\n")
699 #lblSpace.grid(row=11, column=0)
700 btnReceipt=Button(f1bottom,padx=20,pady=2,bd=14,fg="black",font=('arial',16,'bold'),width=16,text="GENERATE RECEIPT", command = Receipt)
701 btnReceipt.grid(row=0,column=0)
702 #================================================================================
703 # FRAME 2 Top
704 # ================================================================================
705
706
707
708 lblMeal = Label(f2Top,font=("arial",25,'bold'), text="Desserts")
709 lblMeal.grid(row=0, column=0)
710
711 ChocoBrownie = Checkbutton(f2Top, text="Chocolate Brownie", variable=var9, onvalue=1, offvalue=0, font=("arial", 18, 'bold'), command=i)
712 ChocoBrownie.grid(row=1, column=0, sticky = W)
713 txtChocoBrownie = Entry(f2Top, font=("arial", 18, 'bold'), bd=8, textvariable = varChocoBrownie, width=4, justify="right",state=DISABLED)
714 txtChocoBrownie.grid(row=1, column=1)
715
716 GulabJamun = Checkbutton(f2Top, text="Hot Gulab Jamun with Icecream", variable=var10, onvalue=1, offvalue=0, font=("arial", 18, 'bold'), command=j)
717 GulabJamun.grid(row=2, column=0, sticky = W)
718 txtGulabJamun = Entry(f2Top, font=("arial", 18, 'bold'), bd=8, textvariable = varGulabJamun, width=4, justify="right",state=DISABLED)
719 txtGulabJamun.grid(row=2, column=1)
720
721 Paan = Checkbutton(f2Top, text="Paan", variable=var11, onvalue=1, offvalue=0, font=("arial", 18, 'bold'), command=k)
722 Paan.grid(row=3, column=0, sticky = W)
723 txtPaan = Entry(f2Top, font=("arial", 18, 'bold'), bd=8, textvariable = varPaan, width=4, justify="right",state=DISABLED)
724 txtPaan.grid(row=3, column=1)
725
726 Rasmalai = Checkbutton(f2Top, text="Rasmalai", variable=var12, onvalue=1, offvalue=0, font=("arial", 18, 'bold'), command=l)
727 Rasmalai.grid(row=4, column=0, sticky = W)
728 txtRasmalai = Entry(f2Top, font=("arial", 18, 'bold'), bd=8, textvariable = varRasmalai, width=4, justify="right",state=DISABLED)
729 txtRasmalai.grid(row=4, column=1)
730
731 Jalebi = Checkbutton(f2Top, text="Jalebi", variable=var13, onvalue=1, offvalue=0, font=("arial", 18, 'bold'), command=m)
732 Jalebi.grid(row=5, column=0, sticky = W)
733 txtJalebi = Entry(f2Top, font=("arial", 18, 'bold'), bd=8, textvariable = varJalebi, width=4, justify="right",state=DISABLED)
734 txtJalebi.grid(row=5, column=1)
735
736
737 #================================================================================
738 # FRAME 2 BOTTOM
739 # ================================================================================
740
741
742
743 lblPaymentMethod = Label(f2Bottom, font=("arial", 18, 'bold'), text = "Payment Method", bd=10, width=16, anchor='w')
744 lblPaymentMethod.grid(row=0,column=0)
745
746 cmbPaymentMethod = ttk.Combobox(f2Bottom, textvariable=varPM, state="readonly", font=("arial", 10, 'bold'), width=20)
747 cmbPaymentMethod['value']=('Cash','Paytm','Master Card','Visa Card','Debit Card')
748 cmbPaymentMethod.current(0)
749 cmbPaymentMethod.grid(row=0, column=1)
750
751 lblTotal = Label(f2Bottom, font=("arial", 18, 'bold'), text = "Total", bd=10, width=16, anchor='e')
752 lblTotal.grid(row=2,column=1)
753 txtTotal = Entry(f2Bottom, font=("arial", 18, 'bold'), bd=8, textvariable = varTotal, width=10, justify="right",state=DISABLED)
754 txtTotal.grid(row=2, column=2)
755
756 lblSGST = Label(f2Bottom, font=("arial", 18, 'bold'), text = "SGST @9%", bd=10, width=16, anchor='e')
757 lblSGST.grid(row=3,column=1)
758 txtSGST = Entry(f2Bottom, font=("arial", 18, 'bold'), bd=8, textvariable = varSGST, width=10, justify="right",state=DISABLED)
759 txtSGST.grid(row=3, column=2)
760
761 lblCGST = Label(f2Bottom, font=("arial", 18, 'bold'), text = "CGST @9%", bd=10, width=16, anchor='e')
762 lblCGST.grid(row=4,column=1)
763 txtCGST = Entry(f2Bottom, font=("arial", 18, 'bold'), bd=8, textvariable = varCGST, width=10, justify="right",state=DISABLED)
764 txtCGST.grid(row=4, column=2)
765
766 lblServiceCharge = Label(f2Bottom, font=("arial", 18, 'bold'), text = "Service Charge @10%", bd=10, width=16, anchor='e')
767 lblServiceCharge.grid(row=5,column=1)
768 txtServiceCharge = Entry(f2Bottom, font=("arial", 18, 'bold'), bd=8, textvariable = varServiceCharge, width=10, justify="right",state=DISABLED)
769 txtServiceCharge.grid(row=5, column=2)
770
771
772 #======================================================================================================================
773 # BUTTONS
774 #======================================================================================================================
775 btnprice=Button(f2Bottom,padx=20,pady=1, bd=14 ,fg="black",font=('arial' ,16,'bold'),width=5, text="PRICE LIST", command = price_list)
776 btnprice.grid(row=2, column=0)
777
778 btnTotal = Button(f2Bottom, padx=20, pady=1, bd=14, fg="black", font=("arial", 16, 'bold'), width=5,
779 text="TOTAL", command = TotalCost).grid(row=3, column=0)
780
781 btnReset=Button(f2Bottom,padx=20,pady=1,bd=14,fg="black",font=('arial',16,'bold'),width=5,text="RESET", command=Reset)
782 btnReset.grid(row=4,column=0)
783
784 btnExit=Button(f2Bottom,padx=20,pady=1,bd=14,fg="black",font=('arial',16,'bold'),width=5,text="EXIT", command = iExit)
785 btnExit.grid(row=5,column=0)
786
787
788
789 #================================================================================
790 # FRAME 3
791 # ================================================================================
792
793 lblDrinks = Label(f3top,font=("arial",25,'bold'), text="Drinks")
794 lblDrinks.grid(row=0, column=0)
795
796 Tea = Checkbutton(f3top, text="Tea", variable=var14, onvalue=1, offvalue=0, font=("arial", 18, 'bold'), command=n)
797 Tea.grid(row=1, column=0, sticky = W)
798 txtTea = Entry(f3top, font=("arial", 18, 'bold'), bd=8, textvariable = varTea, width=4, justify="right",state=DISABLED)
799 txtTea.grid(row=1, column=1)
800
801 Cola = Checkbutton(f3top, text="Cola", variable=var15, onvalue=1, offvalue=0, font=("arial", 18, 'bold'), command=o)
802 Cola.grid(row=2, column=0, sticky = W)
803 txtCola = Entry(f3top, font=("arial", 18, 'bold'), bd=8, textvariable = varCola, width=4, justify="right",state=DISABLED)
804 txtCola.grid(row=2, column=1)
805
806 Coffee = Checkbutton(f3top, text="Coffee", variable=var16, onvalue=1, offvalue=0, font=("arial", 18, 'bold'), command=p)
807 Coffee.grid(row=3, column=0, sticky = W)
808 txtCoffee = Entry(f3top, font=("arial", 18, 'bold'), bd=8, textvariable = varCoffee, width=4, justify="right",state=DISABLED)
809 txtCoffee.grid(row=3, column=1)
810
811 Orange = Checkbutton(f3top, text="Orange Juice", variable=var17, onvalue=1, offvalue=0, font=("arial", 18, 'bold'), command=q)
812 Orange.grid(row=4, column=0, sticky = W)
813 txtOrange = Entry(f3top, font=("arial", 18, 'bold'), bd=8, textvariable = varOrange, width=4, justify="right",state=DISABLED)
814 txtOrange.grid(row=4, column=1)
815
816 Water = Checkbutton(f3top, text="Mineral Water", variable=var18, onvalue=1, offvalue=0, font=("arial", 18, 'bold'), command=r)
817 Water.grid(row=5, column=0, sticky = W)
818 txtWater = Entry(f3top, font=("arial", 18, 'bold'), bd=8, textvariable = varWater, width=4, justify="right",state=DISABLED)
819 txtWater.grid(row=5, column=1)
820
821 lblSpace = Label(f3top,text="\n\n")
822 lblSpace.grid(row=6, column=0)
823
824 lblShakes = Label(f3top,font=("arial",25,'bold'), text="Shakes & Krushers")
825 lblShakes.grid(row=7, column=0)
826
827 ChocolateShake = Checkbutton(f3top, text="Chocolate Shake", variable=var19, onvalue=1, offvalue=0, font=("arial", 18, 'bold'), command=s)
828 ChocolateShake.grid(row=8, column=0, sticky = W)
829 txtChocolateShake = Entry(f3top, font=("arial", 18, 'bold'), bd=8, textvariable = varChocolateShake, width=4, justify="right",state=DISABLED)
830 txtChocolateShake.grid(row=8, column=1)
831
832 VanillaShake = Checkbutton(f3top, text="Vanilla Shake", variable=var20, onvalue=1, offvalue=0, font=("arial", 18, 'bold'), command=t)
833 VanillaShake.grid(row=9, column=0, sticky = W)
834 txtVanillaShake = Entry(f3top, font=("arial", 18, 'bold'), bd=8, textvariable = varVanillaShake, width=4, justify="right",state=DISABLED)
835 txtVanillaShake.grid(row=9, column=1)
836
837 OreoKrusher = Checkbutton(f3top, text="Oreo Krusher", variable=var21, onvalue=1, offvalue=0, font=("arial", 18, 'bold'), command=u)
838 OreoKrusher.grid(row=10, column=0, sticky = W)
839 txtOreoKrusher = Entry(f3top, font=("arial", 18, 'bold'), bd=8, textvariable = varOreoKrusher, width=4, justify="right",state=DISABLED)
840 txtOreoKrusher.grid(row=10, column=1)
841
842 #lblSpace = Label(f3top,text="\n\n\n\n\n")
843 #lblSpace.grid(row=11, column=0)
844
845 lblpay = Label(f3bottom, font=("arial", 18, 'bold'), text = "Total Payable Amount", fg="red", bd=10, width=16, anchor='e')
846 lblpay.grid(row=0, column=0)
847 txtpay = Entry(f3bottom, font=("arial", 18, 'bold'), bd=8, textvariable = varPay, width=10, justify="right",state=DISABLED)
848 txtpay.grid(row=0, column=1)
849
850 root.mainloop()